---
title: 'Troubleshooting'
section: 'advanced'
tags: ['troubleshooting', 'debugging']
order: 1
---

# Troubleshooting

## Version

The most latest version of the Codebuff client can be found on the [npm page](https://www.npmjs.com/package/codebuff).

Run `codebuff --version` to make sure you're on the latest version.

Note: Codebuff should automatically install the latest version. If you're still having issues, see below.

## Codebuff not updating

If you see the npm install run but Codebuff still isn't at the latest version, this is most likely an issue with npm's cache. Try running `npm cache clean --force` and then `npm install -g codebuff`.

## Install failed

If `npm install -g codebuff` gave you an error regarding permissions, try using setting the owner of that directory to your user.

Mac/Linux: `sudo chown -R $(whoami) <directory>`

Windows: `cmd takeown /F <directory> /R /D Y`

Otherwise, try reinstalling node with [nvm or fnm](https://nodejs.org/en/download). Then run the codebuff install command again.

## Accessing Your Chat History

Your conversation history with Codebuff is stored locally (and nowhere else) at `~/.config/manicode/projects/<your-project-name>/chats`.

If you need help, we'd love if you include a copy of your recent chats for us to help you troubleshoot!

## Common Issues

### Connection Issues

If you see a message like this:

```bash
/Users/<youruser>/Library/pnpm/global/5/.pnpm/codebuff@someversion/node_modules/codebuff/dist/common/websockets/websocket-client.js:158
                    reject(new Error(`Websocket message with txid ${txid} timed out.`));                           ^

Error: Websocket message with txid 32 timed out.
    at Timeout._onTimeout (/Users/<youruser>/Library/pnpm/global/5/.pnpm/codebuff@someversion/node_modules/codebuff/dist/common/websockets/websocket-client.js:158:28)
    at listOnTimeout (node:internal/timers:594:17)
    at process.processTimers (node:internal/timers:529:7)

Node.js v22.12.0
```

it means you're having connection issues. In that case, try:

1. Check your internet connection.
2. Try logging out and back in with `logout` followed by `login`.

### Endless Auto-Updates

If Codebuff keeps trying to update itself in an endless loop, there could be several potential causes. Below are known issues and their solutions:

#### Conflicting Node/npm Installations (Homebrew vs. nvm)

One common cause is having conflicting Node/npm installations on your system, particularly between Homebrew and nvm. Here's how to diagnose and fix this:

1. Check your Node and npm paths:

   ```bash
   which node
   which npm
   ```

   If these point to Homebrew paths (e.g., `/opt/homebrew/bin/`) instead of nvm paths (e.g., `~/.nvm/versions/`), that's the issue.

2. Check what packages depend on Node through Homebrew:

   ```bash
   brew uninstall node
   ```

   This will show you any packages that depend on Node.

3. If you don't need those packages anymore, you can uninstall them. This will automatically remove Node as a dependency.

4. After this cleanup, your `which node` and `which npm` commands should point to your nvm installation, and Codebuff should work as expected.

### Command Not Found

If you see "command not found" when trying to run Codebuff:

1. Ensure Codebuff is installed globally: `npm install -g codebuff`
2. Check that your PATH includes npm's global bin directory
3. Try running `which codebuff` to verify the installation location

### Directory Not Empty

If you see an error like this:

```bash
npm ERR! code ENOTEMPTY
npm ERR! syscall rename
npm ERR! path /some/path/to/node_modules/codebuff
npm ERR! dest /some/path/to/node_modules/.codebuff-SOMEHASH
npm ERR! errno -66
npm ERR! ENOTEMPTY: directory not empty, rename '/some/path/to/node_modules/codebuff' -> '/some/path/to/node_modules/.codebuff-SOMEHASH'
```

It means you have a directory named `.codebuff-SOMEHASH` in your node_modules directory. This is a temporary directory created by npm when installing packages. You can safely delete this directory and try again:

```bash
rm -rf /some/path/to/node_modules/.codebuff-SOMEHASH
```

### Automating Codebuff with tmux

If you're trying to automate Codebuff using tmux (e.g., for scripting or testing), standard `tmux send-keys` won't work correctly. Characters will be dropped or garbled.

**The Problem:**
```bash
# ❌ Doesn't work - characters get dropped
tmux send-keys -t codebuff "hello world"
tmux send-keys -t codebuff Enter
# Result: Only "d" appears in the input!
```

**The Solution:**

Use bracketed paste mode by wrapping your input in escape sequences:

```bash
# ✅ Works correctly
tmux send-keys -t codebuff $'\e[200~hello world\e[201~'
tmux send-keys -t codebuff Enter
# Result: "hello world" appears correctly!
```

This tells the terminal that the input is a paste operation, which Codebuff handles atomically.

**Helper script:**
```bash
send_to_codebuff() {
  local session="$1"
  local text="$2"
  tmux send-keys -t "$session" $'\e[200~'"$text"$'\e[201~'
}

# Usage:
send_to_codebuff my-session "fix the bug in main.ts"
tmux send-keys -t my-session Enter
```

### Need More Help?

If you're still experiencing issues:

1. Join our [Discord community](https://codebuff.com/discord) for real-time help from other users!
2. Contact us at [support@codebuff.com](mailto:support@codebuff.com) – please note we prioritize paying users, but we'll likely reply within a week.
